#ifndef ICAMERA_H
#define ICAMERA_H

#include "IKeyListener.h"

namespace steam
{
	namespace moon
	{

		class ICamera : public intake::IKeyListener
		{
		public:

			virtual ~ICamera() {}

			virtual void update() = 0;

			virtual void keyPressed( const intake::KeyEvent* evt ) = 0;

			virtual void keyReleased( const intake::KeyEvent* evt ) = 0;

			virtual const base::Vector3& getPosition() const = 0;

			virtual const base::Vector3& getForward() const = 0;

		};

	}

}

#endif